// 给内置的 context 对象添加方法；

// 框架会把 app/extend/context.js 中定义的对象与 Koa Context 的 prototype 对象进行合并，在处理请求时会基于扩展后的 prototype 生成 ctx 对象。
// console.log('app/extend/context.js');

module.exports = {
  get isIOSByExtend() {
    // const iosReg = /iphone|ipad|ipod/i;
    // return iosReg.test(this.get('user-agent'));
    console.log('app/extend/context.js get isIOSByExtend');
    return true;
  }

  // 失败（好像如果要使用这种写法，对象式的必须在 函数式的上面，也就是把下面的和上面的交换位置，可以试试看~）
  // helper: {
  //   prettyTime: function(time) {
  //     return 'context--' + new Date(time * 1000);
  //   }
  // }
  // 
};


// const BAR = Symbol('Context#bar');
// module.exports = {
//   get bar() {
//     // this 就是 ctx 对象，在其中可以调用 ctx 上的其他方法，或访问属性
//     if (!this[BAR]) {
//       // 例如，从 header 中获取，实际情况肯定更复杂
//       this[BAR] = this.get('x-bar');
//     }
//     return this[BAR];
//   },
// };
